package org.springframework.core.annotation;

import java.lang.annotation.Annotation;
import java.lang.reflect.Method;

import org.springframework.lang.Nullable;

interface AnnotationAttributeExtractor<S> {

	Class<? extends Annotation> getAnnotationType();

	@Nullable
	Object getAnnotatedElement();

	S getSource();

	@Nullable
	Object getAttributeValue(Method attributeMethod);
}
